"""
继承的基础用法

class 子类(父类):
    类内容体


class 子类(父类1,......父类N):
    类内容体


注意：
- 当出现同名成员时，继承括号中，最左边的优先使用


pass关键字的作用：
pass是占位语句，用来保证函数（方法）或类定义的完整性，表示无内容，空的意思
"""

print("====================== 单继承")
class Phone:
    IMEI = None
    producer = "小米"

    def call_by_4g(self):
        print("4g通话")


class Phone2024(Phone):
    face_id = "10001"  # 面部识别id

    def call_by_5g(self):
        print("2024年新功能：5g通话")


phone2024 = Phone2024()
print(phone2024.producer)
phone2024.call_by_4g()
phone2024.call_by_5g()


print("====================== 多继承")
class NFCReader:
    nfc_type = "第五代"
    producer="红米"

    def read_card(self):
        print("NFC读取卡片")

    def write_card(self):
        print("NFC写入卡片")

class RemoteControl:
    remote_type = "红外遥控 "

    def control(self):
        print("红外线遥控开起了")

class Phone_NFC_RemoteControl(Phone, NFCReader, RemoteControl):
    pass

my = Phone_NFC_RemoteControl()

my.call_by_4g()
my.read_card()
my.write_card()
my.control()


print("====================== 成员名称相同时")
"""
因此继承了Phone, NFCReader，他俩都有producer成员变量，那么具体会使用谁呢？
使用最左边，先继承的类中的变量
"""
print(my.producer)